
highs = [170,166,188,205]
#highs表示一堆身高 身高的集合，逐个访问身高
for high in highs: # in highs 在身高集合中 一次获取一个身高（一个常量数值）
     print(high)              # 为了方便操作这个常量 临时取变量名high
#------复杂语法--------
newHighs1 = [] #定义一个空列表
for index,high in enumerate(highs):
     newHighs1.append(high+20)
print(newHighs1)
#---------简单语法-----
print("-------------------------")
newHighs = [high+20  for high in highs] #推导式 方便直接获得新的集合
print(newHighs)
#---- 不仅能做运算 还能使用函数
print("-------还能使用函数和切片------")
names = ["张三","李四","王二"]
firstNames = [name[0:1:]  for name in names ]
print(firstNames)

#集合 元组的推导式
print("-----元组推导式----------")
temps = (1,2,3,7,8,9)  # 有一个元组 我们希望只是把奇数翻倍（现实题目可能有在相亲或者招聘
     # 一堆候选人只把属特定属相或者星座或者爱好的加分）
newTemps = (temp*2 for temp in temps if temp % 2 ==1)
print(type(temps))
print(type(newTemps))
print(tuple(newTemps))


''' import 引入额外的包 package 如果没有需要安装安装步骤如下
1.找到当前使用的python.exe所在的目录 可以通过settings project project intepreter查看 使用cd 进入目录,
再输入c: 切换
cd C:\Users\Administrator\AppData\Local\Programs\Python\Python38-32
c:
pip install numpy
'''
import numpy as np #为对象取个别名
print("------字典推导式----------")
#考试有学生缺考 在算平均成绩的时候要去掉这部分学生
studentScores  = {"张三":90,"李四":80,"王二":"缺考","赵武":"缺考","陈琪":70}
scores = [70,80,90,70]
print(np.mean(scores))#求平均值


